home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 26 / AACD 26.iso / AACD / Utilities / Identify / developer / include / libraries / identify.i < prev   
Encoding:
Text File  |  2001-09-11  |  16.5 KB  |  386 lines

  1. **
  2. **      $VER: identify.i 10.0 (18.10.98)
  3. **
  4. **      identify.library definitions
  5. **
  6. **      (C) Copyright 1996-98 Richard Koerber
  7. **      All Rights Reserved.
  8. **
  9.  
  10.         IFND    LIBRARIES_IDENTIFY_I
  11. LIBRARIES_IDENTIFY_I    SET     1
  12.  
  13.         IFND    EXEC_TYPES_I
  14.         INCLUDE 'exec/types.i'
  15.         ENDC
  16.  
  17.         IFND    EXEC_LIBRARIES_I
  18.         INCLUDE 'exec/libraries.i'
  19.         ENDC
  20.  
  21.         IFND    UTILITY_TAGITEM_I
  22.         INCLUDE utility/tagitem.i
  23.         ENDC
  24.  
  25. _IDTAGS         EQU     $CD450000
  26.  
  27. *------------------------------------------------------------------------*
  28. * Generic library informations
  29. *
  30. IDENTIFYNAME    MACRO
  31.         dc.b    "identify.library",0
  32.         ENDM
  33.  
  34. IDENTIFYVERSION EQU     13
  35.  
  36.     STRUCTURE IdentifyBase,0
  37.     STRUCT  ifyb_LibNode,LIB_SIZE
  38.     LABEL   ifyb_SIZEOF
  39.  
  40. IDENTIFYBUFLEN  EQU     50              ; default buffer length
  41.  
  42. *------------------------------------------------------------------------*
  43. * Expansion() tags
  44. *
  45. IDTAG_ConfigDev EQU     _IDTAGS+$00     ;(struct ConfigDev *) ConfigDev
  46.                     ; structure to be evaluated
  47. IDTAG_ManufID   EQU     _IDTAGS+$01     ;UWORD manufacturer ID if no
  48.                     ; ConfigDev is available
  49. IDTAG_ProdID    EQU     _IDTAGS+$02     ;UBYTE product ID if no
  50.                     ; ConfigDev is available
  51. IDTAG_StrLength EQU     _IDTAGS+$03     ;UWORD of maximum buffer length,
  52.                     ; including termination. Default
  53.                     ; is 50.
  54. IDTAG_ManufStr  EQU     _IDTAGS+$04     ;STRPTR of manufacturer name
  55.                     ; puffer, or NULL
  56. IDTAG_ProdStr   EQU     _IDTAGS+$05     ;STRPTR of product name
  57.                     ; puffer, or NULL
  58. IDTAG_ClassStr  EQU     _IDTAGS+$06     ;STRPTR of product class
  59.                     ; puffer, or NULL
  60. IDTAG_DeadStr   EQU     _IDTAGS+$07     ;STRPTR deadend or recoverable alert?
  61. IDTAG_SubsysStr EQU     _IDTAGS+$08     ;STRPTR alert subsystem
  62. IDTAG_GeneralStr EQU    _IDTAGS+$09     ;STRPTR alert general cause
  63. IDTAG_SpecStr   EQU     _IDTAGS+$0A     ;STRPTR alert specific cause
  64. IDTAG_FuncNameStr EQU   _IDTAGS+$0B     ;STRPTR function name
  65. IDTAG_Expansion EQU     _IDTAGS+$0C     ;(struct ConfigDev **) for a
  66.                     ; complete expansion check. Init
  67.                     ; the variable with NULL.
  68. IDTAG_Secondary EQU     _IDTAGS+$0D     ;BOOL warn for secondary expansion
  69.                     ; boards (defaults to FALSE) [V7]
  70. IDTAG_ClassID   EQU     _IDTAGS+$0E     ;ULONG * class ID of the provided
  71.                     ; expansion board (see below) [V8]
  72. IDTAG_Localize  EQU     _IDTAGS+$0F     ;BOOL return localized strings
  73.                     ; (defaults to TRUE) [V8]
  74. IDTAG_NULL4NA   EQU     _IDTAGS+$10     ;BOOL return NULL for not available,
  75.                     ; else return a string (defaults to
  76.                     ; FALSE) [V8]
  77.  
  78. *------------------------------------------------------------------------*
  79. * Hardware description types
  80. *
  81. IDHW_SYSTEM     EQU     0       ; System (Amiga,DraCo,...)              [V2]
  82. IDHW_CPU        EQU     1       ; CPU (68000,68010,...,68060)
  83. IDHW_FPU        EQU     2       ; FPU (---,68881,68882,68040,68060)
  84. IDHW_MMU        EQU     3       ; MMU (---,68852,68030,68040,68060)
  85. IDHW_OSVER      EQU     4       ; OS Version (V*.*)
  86. IDHW_EXECVER    EQU     5       ; Exec Version (V*.*)
  87. IDHW_WBVER      EQU     6       ; Workbench Version (---,V*.*)
  88. IDHW_ROMSIZE    EQU     7       ; OS ROM Size (*KB, *MB)
  89. IDHW_CHIPSET    EQU     8       ; Chipset (OCS,ECS,AGA,DraCo)
  90. IDHW_GFXSYS     EQU     9       ; Graphic OS (AmigaOS, CyberGraphX, ...)
  91. IDHW_CHIPRAM    EQU     10      ; All Chip RAM (*KB, *MB, *GB)
  92. IDHW_FASTRAM    EQU     11      ; All Fast RAM (*KB, *MB, *GB)
  93. IDHW_RAM        EQU     12      ; All Total RAM (*KB, *MB, *GB)
  94. IDHW_SETPATCHVER EQU    13      ; SetPatch Version (---,V*.*)           [V4]
  95. IDHW_AUDIOSYS   EQU     14      ; Audio OS (AmigaOS, AHI, ...)          [V5]
  96. IDHW_OSNR       EQU     15      ; AmigaOS (2.04, 3.1, ...)
  97. IDHW_VMMCHIPRAM EQU     16      ; VMM Chip RAM (*KB, *MB, *GB)
  98. IDHW_VMMFASTRAM EQU     17      ; VMM Fast RAM (*KB, *MB, *GB)
  99. IDHW_VMMRAM     EQU     18      ; VMM Total RAM (*KB, *MB, *GB)
  100. IDHW_PLNCHIPRAM EQU     19      ; Plain Chip RAM (*KB, *MB, *GB)
  101. IDHW_PLNFASTRAM EQU     20      ; Plain Fast RAM (*KB, *MB, *GB)
  102. IDHW_PLNRAM     EQU     21      ; Plain Total RAM (*KB, *MB, *GB)
  103. IDHW_VBR        EQU     22      ; Vector Base Register                  [V6]
  104. IDHW_LASTALERT  EQU     23      ; Last Alert code
  105. IDHW_VBLANKFREQ EQU     24      ; VBlank Frequency
  106. IDHW_POWERFREQ  EQU     25      ; Power Frequency
  107. IDHW_ECLOCK     EQU     26      ; EClock
  108. IDHW_SLOWRAM    EQU     27      ; Plain Slow RAM (*KB, *MB, *GB)
  109. IDHW_GARY       EQU     28      ; Gary (---,Normal,...)
  110. IDHW_RAMSEY     EQU     29      ; RAMSEY (---,D,F)
  111. IDHW_BATTCLOCK  EQU     30      ; Battery Backed Up Clock (---,Found)
  112. IDHW_CHUNKYPLANAR EQU   31      ; Chunky To Planar Hardware (---,Found) [V7]
  113. IDHW_POWERPC    EQU     32      ; PowerPC present? (---,Found)
  114. IDHW_PPCCLOCK   EQU     33      ; PowerPC clock (unit MHz)
  115. IDHW_CPUREV     EQU     34      ; CPU revision                          [V8]
  116. IDHW_CPUCLOCK   EQU     35      ; CPU clock (unit MHz)
  117. IDHW_FPUCLOCK   EQU     36      ; FPU clock (unit MHz)
  118. IDHW_RAMACCESS  EQU     37      ; Main board RAM access time (unit ns)
  119. IDHW_RAMWIDTH   EQU     38      ; Main board RAM width (bit)
  120. IDHW_RAMCAS     EQU     39      ; Main board RAM CAS mode
  121. IDHW_RAMBANDWIDTH EQU   40      ; Main board RAM bandwidth
  122. IDHW_TCPIP      EQU     41      ; TCP/IP stack                          [V9]
  123. IDHW_PPCOS      EQU     42      ; PowerPC OS
  124. IDHW_AGNUS      EQU     43      ; Agnus chip revision
  125. IDHW_AGNUSMODE  EQU     44      ; Agnus chip mode
  126. IDHW_DENISE     EQU     45      ; Denise chip version                   [V10]
  127. IDHW_DENISEREV  EQU     46      ; Denise chip revision
  128. IDHW_BOINGBAG   EQU     47      ; BoingBag Version                      [V12]
  129. IDHW_EMULATED   EQU     48      ; Emulated Amiga                        [V13]
  130. IDHW_XLVERSION  EQU     49      ; AmigaXL version
  131. IDHW_HOSTOS     EQU     50      ; when emulated: Host OS (see autodocs!)
  132. IDHW_HOSTVERS   EQU     51      ; when emulated: Host Version (see autodocs!)
  133. IDHW_HOSTMACHINE EQU    52      ; when emulated: Host Machine (see autodocs!)
  134. IDHW_HOSTCPU    EQU     53      ; when emulated: Host CPU (see autodocs!)
  135. IDHW_HOSTSPEED  EQU     54      ; when emulated: Host CPU speed (unit MHz, see autodocs!)
  136. IDHW_NUMBEROF   EQU     55      ; Number of types, PRIVATE!
  137.  
  138. *------------------------------------------------------------------------*
  139. * IDHW_SYSTEM numerical result codes
  140. *
  141. IDSYS_AMIGA1000 EQU     0       ; Amiga 1000
  142. IDSYS_AMIGAOCS  EQU     1       ; OCS Amiga 500/2000
  143. IDSYS_AMIGAECS  EQU     2       ; ECS Amiga 500/2000
  144. IDSYS_AMIGA500  EQU     3       ; Amiga 500
  145. IDSYS_AMIGA2000 EQU     4       ; Amiga 2000
  146. IDSYS_AMIGA3000 EQU     5       ; Amiga 3000
  147. IDSYS_CDTV      EQU     6       ; CDTV
  148. IDSYS_AMIGA600  EQU     7       ; Amiga 600
  149. IDSYS_CD32      EQU     8       ; CD32
  150. IDSYS_AMIGA1200 EQU     9       ; Amiga 1200
  151. IDSYS_AMIGA4000 EQU     10      ; Amiga 4000
  152. IDSYS_DRACO     EQU     11      ; DraCo
  153. IDSYS_UAE       EQU     12      ; Ubiquitous Amiga Emulator
  154. IDSYS_AMIGA4000T EQU    13      ; Amiga 4000 Tower
  155. IDSYS_AMIGAXL   EQU     14      ; AmigaXL
  156.  
  157. *------------------------------------------------------------------------*
  158. * IDHW_CPU numerical result codes
  159. *
  160. IDCPU_68000     EQU     0       ; 68000
  161. IDCPU_68010     EQU     1       ; 68010
  162. IDCPU_68020     EQU     2       ; 68020
  163. IDCPU_68030     EQU     3       ; 68030
  164. IDCPU_68EC030   EQU     4       ; 68EC030 (without MMU)
  165. IDCPU_68040     EQU     5       ; 68040
  166. IDCPU_68LC040   EQU     6       ; 68LC040 (without FPU)
  167. IDCPU_68060     EQU     7       ; 68060
  168. IDCPU_68LC060   EQU     8       ; 68LC060 (without FPU)
  169.  
  170. *------------------------------------------------------------------------*
  171. * IDHW_FPU numerical result codes
  172. *
  173. IDFPU_NONE      EQU     0       ; no FPU
  174. IDFPU_68881     EQU     1       ; 68881
  175. IDFPU_68882     EQU     2       ; 68882
  176. IDFPU_68040     EQU     3       ; 68040
  177. IDFPU_68060     EQU     4       ; 68060
  178.  
  179. *------------------------------------------------------------------------*
  180. * IDHW_MMU numerical result codes
  181. *
  182. IDMMU_NONE      EQU     0       ; no MMU
  183. IDMMU_68851     EQU     1       ; 68851
  184. IDMMU_68030     EQU     2       ; 68030
  185. IDMMU_68040     EQU     3       ; 68040
  186. IDMMU_68060     EQU     4       ; 68060
  187.  
  188. *------------------------------------------------------------------------*
  189. * IDHW_OSNR numerical result codes
  190. *
  191. IDOS_UNKNOWN    EQU     0       ; none of the below
  192. IDOS_2_0        EQU     1       ; OS2.0  (V36)
  193. IDOS_2_04       EQU     2       ; OS2.04 (V37)
  194. IDOS_2_1        EQU     3       ; OS2.1  (V38)
  195. IDOS_3_0        EQU     4       ; OS3.0  (V39)
  196. IDOS_3_1        EQU     5       ; OS3.1  (V40)
  197. IDOS_3_5        EQU     6       ; OS3.5  (V44)
  198. IDOS_3_9        EQU     7       ; OS3.9  (V45)
  199.  
  200. *------------------------------------------------------------------------*
  201. * IDHW_CHIPSET numerical result codes
  202. *
  203. IDCS_OCS        EQU     0       ; OCS
  204. IDCS_ECS        EQU     1       ; ECS
  205. IDCS_AGA        EQU     2       ; AGA
  206. IDCS_ALTAIS     EQU     3       ; DraCo Altais
  207. IDCS_NECS       EQU     4       ; Nearly ECS (no HR-Agnus or HR-Denise)
  208.  
  209. *------------------------------------------------------------------------*
  210. * IDHW_GFXSYS numerical result codes
  211. *
  212. IDGOS_AMIGAOS   EQU     0       ; Plain AmigaOS
  213. IDGOS_EGS       EQU     1       ; EGS
  214. IDGOS_RETINA    EQU     2       ; Retina
  215. IDGOS_GRAFFITI  EQU     3       ; Graffiti
  216. IDGOS_TIGA      EQU     4       ; TIGA
  217. IDGOS_PROBENCH  EQU     5       ; Merlin ProBench
  218. IDGOS_PICASSO   EQU     6       ; Picasso
  219. IDGOS_CGX       EQU     7       ; CyberGraphX
  220. IDGOS_CGX3      EQU     8       ; CyberGraphX 3
  221. IDGOS_PICASSO96 EQU     9       ; Picasso96
  222. IDGOS_CGX4      EQU     10      ; CyberGraphX V4
  223.  
  224. *------------------------------------------------------------------------*
  225. * IDHW_AUDIOSYS numerical result codes
  226. *
  227. IDAOS_AMIGAOS   EQU     0       ; Plain AmigaOS
  228. IDAOS_MAESTIX   EQU     1       ; MaestroPro driver
  229. IDAOS_TOCCATA   EQU     2       ; Toccata driver
  230. IDAOS_PRELUDE   EQU     3       ; Prelude driver
  231. IDAOS_AHI       EQU     4       ; AHI
  232. IDAOS_MACROAUDIO EQU    5       ; MacroAudio
  233.  
  234. *------------------------------------------------------------------------*
  235. * IDHW_GARY numerical result codes
  236. *
  237. IDGRY_NONE      EQU     0       ; No Gary available
  238. IDGRY_NORMAL    EQU     1       ; Normal Gary
  239. IDGRY_ENHANCED  EQU     2       ; Enhanced Gary
  240.  
  241. *------------------------------------------------------------------------*
  242. * IDHW_RAMSEY numerical result codes
  243. *
  244. IDRSY_NONE      EQU     0       ; No RamSey available
  245. IDRSY_REVD      EQU     1       ; RamSey Revision D
  246. IDRSY_REVF      EQU     2       ; RamSey Revision F
  247.  
  248. *------------------------------------------------------------------------*
  249. * IDHW_POWERPC numerical result codes
  250. *
  251. IDPPC_NONE      EQU     0       ; No PowerPC implemented
  252. IDPPC_OTHER     EQU     1       ; Another PowerPC
  253. IDPPC_602       EQU     2       ; 602
  254. IDPPC_603       EQU     3       ; 603
  255. IDPPC_603E      EQU     4       ; 603e
  256. IDPPC_603P      EQU     5       ; 603p
  257. IDPPC_604       EQU     6       ; 604
  258. IDPPC_604E      EQU     7       ; 604e
  259. IDPPC_620       EQU     8       ; 620
  260.  
  261. *------------------------------------------------------------------------*
  262. * IDHW_RAMCAS numerical result codes
  263. *
  264. IDCAS_NONE      EQU     0       ; Not available
  265. IDCAS_NORMAL    EQU     1       ; Normal access
  266. IDCAS_DOUBLE    EQU     2       ; Double access
  267.  
  268. *------------------------------------------------------------------------*
  269. * IDHW_TCPIP numerical result codes
  270. *
  271. IDTCP_NONE      EQU     0       ; Not available
  272. IDTCP_AMITCP    EQU     1       ; AmiTCP
  273. IDTCP_MIAMI     EQU     2       ; Miami
  274. IDTCP_TERMITE   EQU     3       ; TermiteTCP
  275. IDTCP_GENESIS   EQU     4       ; GENESiS
  276. IDTCP_MIAMIDX   EQU     5       ; MiamiDX
  277.  
  278. *------------------------------------------------------------------------*
  279. * IDHW_PPCOS numerical result codes
  280. *
  281. IDPOS_NONE      EQU     0       ; None
  282. IDPOS_POWERUP   EQU     1       ; PowerUP (Phase 5)
  283. IDPOS_WARPOS    EQU     2       ; WarpOS (Haage&Partner)
  284.  
  285. *------------------------------------------------------------------------*
  286. * IDHW_AGNUS numerical result codes
  287. *
  288. IDAG_NONE       EQU     0       ; None
  289. IDAG_UNKNOWN    EQU     1       ; Unknown Agnus
  290. IDAG_8361       EQU     2       ; Agnus 8361
  291. IDAG_8367       EQU     3       ; Agnus 8367
  292. IDAG_8370       EQU     4       ; Agnus 8370
  293. IDAG_8371       EQU     5       ; Agnus 8371
  294. IDAG_8372_R4    EQU     6       ; Agnus 8372 Rev. 1-4
  295. IDAG_8372_R5    EQU     7       ; Agnus 8372 Rev. 5
  296. IDAG_8374_R2    EQU     8       ; Alice 8374 Rev. 1-2
  297. IDAG_8374_R3    EQU     9       ; Alice 8374 Rev. 3-4
  298.  
  299. *------------------------------------------------------------------------*
  300. * IDHW_DENISE numerical result codes
  301. *
  302. IDDN_NONE       EQU     0       ; None
  303. IDDN_UNKNOWN    EQU     1       ; Unknown Denise (new model?! :-)
  304. IDDN_8362       EQU     2       ; Denise 8362
  305. IDDN_8373       EQU     3       ; Denise 8373
  306. IDDN_8364       EQU     4       ; Lisa 8364
  307.  
  308. *------------------------------------------------------------------------*
  309. * IDHW_AGNUSMODE numerical result codes
  310. *
  311. IDAM_NONE       EQU     0       ; None
  312. IDAM_NTSC       EQU     1       ; NTSC Agnus
  313. IDAM_PAL        EQU     2       ; PAL Agnus
  314.  
  315. *------------------------------------------------------------------------*
  316. * IDTAG_ClassID numerical result codes
  317. *
  318. IDCID_UNKNOWN           EQU     0       ; unknown functionality
  319. IDCID_MISC              EQU     1       ; miscellaneous expansion
  320. IDCID_TURBO             EQU     2       ; accelerator
  321. IDCID_TURBORAM          EQU     3       ; accelerator RAM
  322. IDCID_TURBOHD           EQU     4       ; accelerator + some HD controller
  323. IDCID_TURBOIDE          EQU     5       ; accelerator + AT-IDE controller
  324. IDCID_TURBOSCSIHD       EQU     6       ; accelerator + SCSI host adapter
  325. IDCID_NET               EQU     7       ; some network
  326. IDCID_ARCNET            EQU     8       ; ArcNet
  327. IDCID_ETHERNET          EQU     9       ; Ethernet
  328. IDCID_AUDIO             EQU     10      ; audio
  329. IDCID_VIDEO             EQU     11      ; video (video digitizer etc)
  330. IDCID_MULTIMEDIA        EQU     12      ; multimedia (audio, video, etc)
  331. IDCID_DSP               EQU     13      ; multi purpose DSP
  332. IDCID_BUSBRIDGE         EQU     14      ; ISA bus bridge
  333. IDCID_BRIDGE            EQU     15      ; PC bridge
  334. IDCID_EMULATOR          EQU     16      ; some Emulator hardware
  335. IDCID_MACEMU            EQU     17      ; Macintosh emulator hardware
  336. IDCID_ATARIEMU          EQU     18      ; Atari emulator hardware
  337. IDCID_GFX               EQU     19      ; graphics (register)
  338. IDCID_GFXRAM            EQU     20      ; graphics (video RAM)
  339. IDCID_HD                EQU     21      ; some HD controller
  340. IDCID_HDRAM             EQU     22      ; some HD controller + RAM
  341. IDCID_IDEHD             EQU     23      ; IDE controller
  342. IDCID_IDEHDRAM          EQU     24      ; IDE controller + RAM
  343. IDCID_SCSIHD            EQU     25      ; SCSI host adapter
  344. IDCID_RAMSCSIHD         EQU     26      ; SCSI host adapter + RAM
  345. IDCID_CDROM             EQU     27      ; CD-ROM interface
  346. IDCID_MODEM             EQU     28      ; internal modem
  347. IDCID_ISDN              EQU     29      ; internal ISDN terminal adapter
  348. IDCID_MULTIIO           EQU     30      ; multi I/O (serial + parallel)
  349. IDCID_SERIAL            EQU     31      ; multi serial (no parallel)
  350. IDCID_PARALLEL          EQU     32      ; multi parallel (no serial)
  351. IDCID_SCANIF            EQU     33      ; scanner interface
  352. IDCID_TABLET            EQU     34      ; drawing tablet interface
  353. IDCID_RAM               EQU     35      ; plain RAM expansion
  354. IDCID_FLASHROM          EQU     36      ; Flash ROM
  355. IDCID_SCSIIDE           EQU     37      ; combined SCSI/IDE controller
  356. IDCID_RAMFPU            EQU     38      ; RAM expansion + FPU
  357. IDCID_GUESS             EQU     39      ; name was unknown but guessed
  358. IDCID_KICKSTART         EQU     40      ; KickStart
  359. IDCID_RAM32             EQU     41      ; 32bit RAM expansion
  360. IDCID_TURBOANDRAM       EQU     42      ; accelerator + RAM expansion
  361. IDCID_ACCESS            EQU     43      ; access control
  362. IDCID_INTERFACE         EQU     44      ; some interface
  363. IDCID_MFMHD             EQU     45      ; MFM HD controller
  364.     ; Be prepared to get other numbers as well. In this case you
  365.     ; should assume IDCID_MISC.
  366.  
  367. *------------------------------------------------------------------------*
  368. * Error codes
  369. *
  370.                 ;Positive error codes are DOS errors!
  371. IDERR_OKAY      EQU     0       ;No error
  372. IDERR_NOLENGTH  EQU     -1      ;Buffer length is 0 ??
  373. IDERR_BADID     EQU     -2      ;Missing or bad board ID
  374. IDERR_NOMEM     EQU     -3      ;Not enough memory
  375. IDERR_NOFD      EQU     -4      ;No fitting FD file found
  376. IDERR_OFFSET    EQU     -5      ;Function offset not found
  377. IDERR_DONE      EQU     -6      ;Done with traversing (not an error)
  378. IDERR_SECONDARY EQU     -7      ;Secondary expansion board (not an error)
  379.  
  380. *------------------------------------------------------------------------*
  381. * That's all...
  382. *
  383.     ENDC
  384.  
  385.  
  386.